Thesis Proposal: Effective Type Theory for Modularity
نویسنده
چکیده
The programming language Standard ML (SML) draws much of its expressive power from advanced concepts in type theory. In addition, unlike other HOT (Higher-Order Typed) languages, SML has the distinction of being formally defined. Unfortunately, the Definition of SML is not type-theoretic, making it difficult to analyze and extend. Much work in the last decade has thus been devoted to better understanding the type-theoretic underpinnings of SML, particularly with respect to its module system. In my thesis work I plan to study several extensions to SML that would enhance its support for modular programming even further. My methodology for formalizing these extensions follows the approach advocated by Harper and Stone, who gave an interpretation of SML that involves elaborating SML programs into type theory. This approach allows me to design my extensions at the level of the underlying type theory, which is the ideal setting for language design, but provides the option to fall back on elaboration techniques when type inference or syntactic sugar is key to making a language feature palatable. I will incorporate my extensions into the TILT compiler for SML, whose front-end is a suitable testbed for implementation as it is based on the Harper-Stone framework. This proposal describes my work thus far on extending SML with higher-order modules, modules as firstclass values, and recursive modules. A running theme in my type theory for modules is the importance of effects. The design of my type system for the first two extensions is driven by the intuition that the creation of abstract data types should be thought of as an effect. My type system is more expressive than previous systems because it distinguishes type abstraction (a compile-time effect) from type generativity (a run-time effect). While my proposal for recursive modules relies more heavily on elaboration techniques, its success hinges critically on the introduction of a type of lazy memoized modules, used to encapsulate term-level computational effects.
منابع مشابه
Crosscutting the Great Divide: Exploring an Aspect-Oriented Approach to OS Code Thesis Proposal
Operating system code is complex. But, while substantial complexity is inherent to this domain, some complexity is caused by modularity problems. The goal of the work proposed here is to explore aspectoriented programming as a means of making this kind of complexity unnecessary. Towards this end, we need to identify aspects of the system, use the proposed mechanisms of AOP to modularize them, a...
متن کاملHierarchy helps it work that way
Jerry Fodor argues, in The mind doesn’t work that way (Cambridge, MA: MIT Press, 2000), that the computational theory of mind is undermined by the pervasive context sensitivity of human cognition. His objections can be easily met, however, by noting the properties of appropriately structured representation hierarchies. In The mind doesn’t work that way (Fodor, 2000) Jerry Fodor argues that the ...
متن کاملDoes the Study of Autism Justify Minimalist Innate Modularity?
Innate modularity is a central question for cognitive neuroscience. One proposal is that a “theory of mind” is a species-specific (human) example of an innate module. The genetic, nemodevelopmental, psychiatric condition of autism is considered in terms of the innate modularity claim. At the opposite extreme, explanations of autism in terms of deficits in a general learning mechanism are consid...
متن کاملبررسی نظرات دانشجویان پزشکی زاهدان در مورد تاثیر درس بهداشت4 و اتاق مشاوره بر پایاننامه آنان
Objectives : The course "Health IV" and "consulting room" are two resources of learning about the method of preparing proposal and passing the final thesis for medical students at Zahedan University of Medical Sciences (ZUMS). The purpose of this study was to investigate the students' viewpoints on the effects of "Health IV" and consulting room on their final theses (pl. of thesis). Methods : T...
متن کاملModularity in Computer Assisted Reasoning Systems
1 Problem being addressed An important problem in the domain of automated reasoning is the development of mechanisms for the integration of disparate provers. The components of a prover may be based on different logics, they may have different domain models, they may use different representations of information and reasoning strategies, and they may have different interaction capabilities. The ...
متن کامل